一起看 I/O | Android 隐私安全更新一览
作者 / Sara N-Marandi, Product Manager, Android Platform Product
人们希望用值得信赖的操作系统和应用来处理最私密和敏感的信息。隐私是 Android 产品原则的核心。正如我们在☟Android 隐私更新一览☟演讲中所分享的那样,Android 12 继续在既有的安全基础上进行扩展,进一步加码平台的隐私保护功能。
△ Android 隐私更新一览
Android 12 为用户提供了更多关于应用访问数据的透明度,同时还能通过简单的控制进行简洁明了的管理。Android 还致力于减少权限的覆盖范围,让应用只能访问提供功能所必需的数据。下面让我们一起来看看 Android 12 为保护用户隐私所带来的一些重要更新。
隐私仪表板 (Privacy Dashboard) - 用户经常告诉我们,他们想了解应用使用了哪些数据。用户将在新的隐私仪表板里看到一个简单明晰的时间线,了解过去 24 小时内应用对位置、麦克风和摄像头的访问情况。您还可以通过 Android 12 中新的权限 intent API 分享应用使用数据的更多背景信息。隐私仪表板将在 Beta 2 中加入供大家体验。
我们建议所有开发者审查应用的代码,了解数据访问需求,包括第三方 SDK 用到的数据,并确保所有的用例都有正当的理由。为了帮助大家做到这一点,我们在 Android 11 中增加了数据访问审计 API,使您能够轻松对应用使用的数据进行审核。您可以通过这个 API 查看代码的哪些部分访问了私密数据,并采取相应的清理措施。
审核对数据的访问 https://developer.android.google.cn/guide/topics/data/audit-access
△ 通过隐私仪表板查看过去 24 小时内位置信息的访问情况
麦克风和摄像头指示器 - 我们在 Android 12 中提升了麦克风和摄像头访问的透明度: 当应用使用麦克风或摄像头时,用户将实时知晓。用户还可以进入快速设置 (Quick Settings),轻松查看使用麦克风和摄像头的应用。如果该访问是不正当的,用户还可以快速导航到应用的权限页面撤销其权限。
开发者应该审查应用对麦克风和摄像头的使用情况,并移除造成意外使用的场景。例如,您应该确保应用只会在用户点击需要用到麦克风和摄像头的功能时才使用这些传感器。麦克风和摄像头指示器将在 Beta 2 中加入供大家体验。
麦克风和摄像头开关 - 您可能见过有人在摄像头上贴上贴纸,或者在手机上插上音频屏蔽器,来保护自己的隐私。在 Android 12 中,我们引入了两个新控件,让用户可以快速、轻松地切断应用对设备麦克风和摄像头的访问。另外,为了确保用户安全,紧急呼叫将作为例外处理。
如果一个已经获得了权限的应用试图访问麦克风或摄像头,但用户已经关闭了它们,系统将显示一条信息,通知用户必须重新打开传感器才能使用该应用的功能。如果您有遵循应用权限最佳实践,那么您不需要特别做什么事情,就可以得到这些状态切换的功能。麦克风和摄像头开关功能将在 Beta 2 中加入供大家体验。
应用权限最佳做法 https://developer.android.google.cn/training/permissions/usage-notes
剪贴板读取通知 - 复制到剪贴板的内容可能包含敏感信息,因为用户经常复制电子邮件、地址,甚至密码。Android 12 在应用每次从剪贴板中读取内容时都会通知用户,每次应用调用 getPrimaryClip() 时,用户会在屏幕底部看到一条提示消息。如果剪贴板数据来自同一应用,则不会出现提示。您可以先通过 getPrimaryClipDescription() 来了解剪贴板中数据的类型,从而尽量减少对剪贴板的访问。推荐的最佳做法是,只在用户明白为什么会访问剪贴板的情况下才进行访问。剪贴板读取通知将在 Beta 2 中加入供大家体验。
附近设备权限 - Android 12 增加了一个新的运行时权限,可以在不使用用户位置信息的情况下扫描附近设备,从而减少对用户数据的访问。之前,手表和耳机等设备的伴侣应用需要位置权限来扫描附近的蓝牙设备并进行配对。这让用户和开发者们很困惑,也会导致用户在没有必要的情况下授予位置权限。对于把 Target SDK 等级升级到 Android 12 的应用,您可以使用新的 BLUETOOTH_SCAN 权限并设置 usesPermissionFlags="neverForLocation" 属性来扫描附近的设备,从而与精细位置权限脱钩。在与设备配对后,使用新的 BLUETOOTH_CONNECT 权限与之互动即可。使用蓝牙扫描进行定位的应用仍然必须拥有定位权限。附近设备权限已经加入 Beta 1 供大家体验。
BLUETOOTH_SCAN https://developer.android.google.cn/reference/android/Manifest.permission.html#BLUETOOTH_SCAN usesPermissionFlags="neverForLocation" https://developer.android.google.cn/reference/android/R.attr.html#usesPermissionFlags BLUETOOTH_CONNECT https://developer.android.google.cn/reference/android/Manifest.permission.html#BLUETOOTH_CONNECT
应用休眠 - 去年我们推出了权限自动重置功能,如果一个应用长时间不用,Android 会自动撤销该应用的权限。在过去的两周内,Android 重置了超过 850 万个应用的权限。今年,我们在权限自动重置的基础上,对长时间未使用的应用进行智能休眠,从而优化设备存储、性能和安全。系统不仅会撤销用户之前授予的权限,而且还会强制停止应用,并回收内存、存储和其他临时资源。用户只需启动应用,就可以使其脱离休眠状态。应用休眠已经加入 Beta 1 供大家体验。
自动重置未使用的应用的权限 https://developer.android.google.cn/about/versions/11/privacy/permissions#auto-reset
Android 12 是迄今为止我们在隐私安全方面最具雄心的版本。一路走来,我们与开发者社区密切接触,协力共建一个将隐私置于首位的平台,同时也兼顾对开发者造成的影响。感谢大家持续的反馈和支持,让我们的平台对每个人都更私密,更安全。请前往开发者网站,了解更多新特性和细节:
推荐阅读